<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:c="http://java.sun.com/jstl/core"
	xmlns:s="http://jboss.com/products/seam/taglib"
	xmlns:a="http://richfaces.org/a4j"
	xmlns:rich="http://richfaces.org/rich"
	template="/templates/admin.xhtml">

	<ui:define name="adminContent">
		<f:view>
		<h:form id="categorias" >
		<center>
		<rich:spacer height="30px;"/>
			<rich:tabPanel width="820px;" switchType="client">
				<rich:tab label="categorias">
					<!-- Edicion de categorias -->
					<center>
						<a:outputPanel id="panelCategorias">
						<br /><br />
							<rich:dataTable value="#{categoriasAdmin}" var="categoria" >
								<f:facet name="header">Categorias</f:facet>
									<rich:column>
										<f:facet name="header"><h:outputText value="Nombre" /></f:facet>
										<h:outputText value="#{categoria.nombre}" />
									</rich:column>
									<rich:column>
										<f:facet name="header"><h:outputText value="Descripcion" /></f:facet>
										<h:outputText value="#{categoria.descripcion}" />
									</rich:column>
									<rich:column>
										<a:commandButton value="Eliminar" reRender="panelConfirmacion" immediate="true" oncomplete="Richfaces.showModalPanel('panelConfirmacion')" action="#{categoryBean.compruebaCategoria}"/>
										<a:commandButton value="Editar" action="#{categoryBean.iniciarModificar}" reRender="panelCategorias, edicionCategoria" immediate="true" />
									</rich:column>
							
							</rich:dataTable>
							<br/><br/>

						<a:commandButton value="Nueva" reRender="edicionCategoria" immediate="true"  action="#{categoryBean.iniciarInsertar}" rendered="#{!categoryBean.insertar}"/>
						<br/><br/>
						</a:outputPanel>
						<a:outputPanel id="edicionCategoria">
							<a:outputPanel id="panelModificarCategoria" rendered="#{categoryBean.modificar}">
								<rich:panel style="width: 300px;">
									<f:facet name="header">Modificar Categoria</f:facet>
									<h:panelGrid columns="2">
										<h:outputLabel value="Nombre" for="nombreCatModificar" />
										<h:inputText value="#{categoriaModificar.nombre}" id="nombreCatModificar"  />
										<h:outputLabel value="Descripcion" for="desCatModificar" />
										<h:inputText value="#{categoriaModificar.descripcion}" id="desCatModificar" />
									</h:panelGrid>
									<a:commandButton value="Guardar" action="#{categoryBean.modificarCategoria}" reRender="panelCategorias, edicionCategoria" />
									<a:commandButton value="Cancelar" action="#{categoryBean.cancelarModificar}" reRender="panelCategorias, edicionCategoria" />
								</rich:panel>
							</a:outputPanel>
								<br/><br/>
							<a:outputPanel id="panelNuevaCategoria" rendered="#{categoryBean.insertar}">
								<rich:panel style="width: 300px;">
									<f:facet name="header">Nueva Categoria</f:facet>
									<h:panelGrid columns="2">
										<h:outputLabel value="Nombre" for="nombreCatInsertar" />
										<h:inputText value="#{categoriaInsertar.nombre}" id="nombreCatInsertar"/>
										<h:outputLabel value="Descripcion" for="desCatInsertar" />
										<h:inputText value="#{categoriaInsertar.descripcion}" id="desCatInsertar"/>
									</h:panelGrid>
									<a:commandButton value="Insertar" action="#{categoryBean.insertarCategoria}" reRender="panelCategorias, edicionCategoria" />
									<a:commandButton value="Cancelar" action="#{categoryBean.cancelarInsertar}" reRender="panelCategorias, edicionCategoria" />
								</rich:panel>
							</a:outputPanel>
							
						</a:outputPanel>
					</center>
											
		
		
				</rich:tab>
		
		
				<rich:tab label="restaurantes">
					<!-- Listado de restaurantes -->
					<center>
					<br /><br />
					<a:outputPanel id="listadoRevisar">
						<rich:dataTable value="#{restaurantesRevisar}" var="restauranteSeleccionado" columnClasses="column">
								<f:facet name="header">Restaurantes</f:facet>
									<rich:column>
										<f:facet name="header"><h:outputText value="Fecha registro" /></f:facet>
										<h:outputText value="#{restauranteSeleccionado.fechaAlta}" >
											<s:convertDateTime pattern="dd/MM/yyyy"/>
										</h:outputText>
									</rich:column>
									
									<rich:column>
										<f:facet name="header"><h:outputText value="Restaurante" /></f:facet>
										<h:outputText value="#{restauranteSeleccionado.nombre}" />
									</rich:column>
									<rich:column>
										<f:facet name="header"><h:outputText value="Categoria" /></f:facet>
										<h:outputText value="#{restauranteSeleccionado.categoria.nombre}" />
									</rich:column>
									<rich:column>
										<a:commandButton value="Ver" action="#{revisar.mostrarRestaurante}"  reRender="panelRevisar"  />
									</rich:column>
						</rich:dataTable>
					</a:outputPanel>
							<!-- Panel Revisar Restaurante -->
							<br /><br /><br />
							<a:outputPanel id="panelRevisar">
								<rich:panel style="width: 650px;" rendered="#{revisar.mostrarRestaurante}">
									<f:facet name="header"> Detalles del Restaurante</f:facet>
									<h:panelGrid columns="2" cellspacing="10" >
										<h:outputLabel value="Fecha de Alta" for="rFecha" />
										<h:inputText value="#{revisar.restauranteSeleccionado.fechaAlta}" id="rFecha" disabled="true" style="color: #3366CC;">
												<s:convertDateTime pattern="dd/MM/yyyy"/>
										</h:inputText>
										<h:outputLabel value="Nombre" for="rNombre" />
										<h:inputText id="rNombre" value="#{revisar.restauranteSeleccionado.nombre}" disabled="true" style="color: #3366CC; width : 190px;"/>
										<h:outputLabel value="Categoria" for="rCat" />
										<h:inputText id="rCat" value="#{revisar.restauranteSeleccionado.categoria.nombre}" disabled="true" style="color: #3366CC; width : 190px;"/>
										<h:outputLabel value="Email" for="rEmail" />
										<h:inputText id="rEmail" value="#{revisar.restauranteSeleccionado.email}" disabled="true" style="color: #3366CC; width : 190px;"/>
										<h:outputLabel value="Telefono" for="rTelefono" />
										<h:inputText id="rTelefono" value="#{revisar.restauranteSeleccionado.telefono}" disabled="true" style="color: #3366CC;"/>
										<br /> <br />
										
									</h:panelGrid>
									
									<br /> <br />
									<a:outputPanel rendered="#{(revisar.fotosRestaurante.size>0)}">
										<rich:panel id="panelFotoSeleccionada">
											<f:facet name="header" ><h:outputText value="Fotos del Restaurante"/></f:facet>
											<h:graphicImage url="/RestaurantsImages#{revisar.fotoSeleccionada}" height="450px;" width="450px;"/>
										</rich:panel>
										<br /> <br />
										<rich:dataGrid value="#{revisar.fotosRestaurante}" var="fotoseleccionada" columns="5" width="600px">
								            <rich:panel bodyClass="pbody" style="width: 120px;">
								                <rich:effect type="Opacity" event="onclick" params="duration:0.8,from:0.3,to:1"/>
								                <f:facet name="header" >
								                    <h:outputText value=" "></h:outputText>
								                </f:facet>
								                <a:commandLink action="#{revisar.seleccionarFoto(fotoseleccionada.ruta)}" reRender="panelFotoSeleccionada" id="enlaceFoto">
								                    <h:graphicImage url="/RestaurantsImages#{fotoseleccionada.ruta}" height="90px;" width="90px;"/>
								                </a:commandLink>
								            </rich:panel>
								            
								        </rich:dataGrid >
									</a:outputPanel>
									<br /><br />
									<div align="center">
										<a:commandButton action="#{revisar.aprobarRestaurante}" value="Aprobar" reRender="listadoRevisar" style=" width : 80px; height : 30px;"/>
										<rich:spacer width="20px;"/>
										<a:commandButton action="#{revisar.denegarRestaurante}" value="Denegar" reRender="listadoRevisar" style=" width : 80px; height : 30px;"/>
									</div>
									
								</rich:panel>
						</a:outputPanel>
					</center>
				</rich:tab>
		
		
			</rich:tabPanel>												
		</center>
		</h:form>
		
		
		
		
		<!-- Modal Panel (Eliminar) -->
		<h:form id="confirmacion">
		<rich:modalPanel id="panelConfirmacion" moveable="false" >
			 
			<f:facet name="header">
					<h:outputText value="Confirma que desea eliminar la categoria" />
			</f:facet>
				
			<c:if test="#{!categoryBean.tieneRestaurantes}">
				<div style="text-align:justify; margin-left:25px; margin-right:25px ;">
					<h:outputText value="Confirme que desea eliminar la categoria: #{categoryBean.categoria.nombre}" />
				</div>
				<br />
				<br />
				<div align="center">
					<h:panelGrid columns="2">
						<a:commandButton value="Eliminar" action="#{categoryBean.deleteCategory}"  oncomplete="Richfaces.hideModalPanel('confirmacion:panelConfirmacion');" reRender="categorias:panelCategorias"/>
						<a:commandButton value="Cancelar" onclick="Richfaces.hideModalPanel('confirmacion:panelConfirmacion');"/>
					</h:panelGrid>
				</div>
			</c:if>
		
			<c:if test="#{categoryBean.tieneRestaurantes}">
				<div style="text-align:justify; margin-left:25px; margin-right:25px ;">
					<h:outputText value="Existen restaurantes con la categoria que pretende eliminar. Especifique la nueva categoria para los restaurantes" />
				</div>
				<br />
				<br />
				<div align="center">
					<h:selectOneMenu value="#{nuevaCategoria}"  style=" width : 130px;" id="newCategory"  >
						<s:selectItems value="#{categoriasAsignar}" var="nuevaCategoria"  label="#{nuevaCategoria.nombre}"  />
						<s:convertEntity />
					</h:selectOneMenu>
					<br />
					<br />
					<h:panelGrid columns="2">
						<a:commandButton value="Actualizar y eliminar" action="#{categoryBean.actualizarRestaurantes()}" oncomplete="Richfaces.hideModalPanel('confirmacion:panelConfirmacion');" immediate="true"/>
						<a:commandButton value="Cancelar" onclick="Richfaces.hideModalPanel('confirmacion:panelConfirmacion');"/>
					</h:panelGrid>
				</div>
			</c:if>
		</rich:modalPanel>
		</h:form>
		
		</f:view>
	</ui:define>
</ui:composition>